package com.example.foobar.business.service;

import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.example.foobar.dto.DABaseDTO;
import com.example.foobar.entity.DaUserChangeRecord;
import com.example.foobar.param.DaUserChangeRecordPageParam;
import io.geekidea.springbootplus.framework.core.pagination.Paging;

import java.util.Date;
import java.util.List;

/**
 * 本地公众号信息 服务类
 *
 * @author 郑英奔
 * @since 2021-05-31
 */
public interface DaUserChangeRecordService {
    boolean saveDaUserChangeRecord(DaUserChangeRecord daUserChangeRecord);

    boolean updateDaUserChangeRecord(DaUserChangeRecord daUserChangeRecord);

    boolean deleteDaUserChangeRecord(Long id);

    DaUserChangeRecord getById(Long id);

    Paging<DaUserChangeRecord> getDaUserChangeRecordPageList(DaUserChangeRecordPageParam daUserChangeRecordPageParam);

    void recordUserChange(Date date);

    void recordUserChangeFromYingMa(Date date);

    List<DABaseDTO> getUserActiveRate(String uniacid, Date baseDate, Date date);

    List<DABaseDTO> getUserActiveRateforYingMa(String uniacid, Date baseDate, Date date);

    void deleteYesterdayActiveRecord(Date date);

    public List<DaUserChangeRecord> list(Wrapper<DaUserChangeRecord> wrapper);

    public int count(Wrapper<DaUserChangeRecord> wrapper);

    List<DABaseDTO> getQrcodeUserActiveRateforYingMa(String valueOf, Date baseDate, Date date);
}
